/**
 * 
 */
package com.shine.icis.dao;

import java.util.List;

import com.shine.cotrun.sql.QueryParameters;
import com.shine.cotrun.web.comm.ListPage;
import com.shine.icis.dao.IBaseHibernateDAO;
import com.shine.icis.hbean.MetadataCheckItem;
import com.shine.icis.hbean.MetadataCheckLog;

/**
 * 元数据质量检查日志的查询
 * @author zhangxr  2010-10-22
 * */
public interface IMetadataCheckLogDAO extends IBaseHibernateDAO {
	
	/**
	 * 元数据质量检查日志类别，状态为启用
	 * @author zhangxr  2010-10-22
	 * */
	public List<MetadataCheckItem> findMetadataCheckItems(char enableFlag);
	
	/**
	 * 查询元数据质量检查日志
	 * @author zhangxr  2010-10-22
	 * @param qp
	 * */
	public ListPage<MetadataCheckLog> findMetadataCheckLogPage(QueryParameters qp);
	
	
	/**
	 * 统计整个过程时间段内，质量检查日志告警信息条数
	 * @param operDate 起始日期
	 * @param operTime 起始时间
	 * @param prepLevelID 最小警告级别
	 * @return
	 */
	public List<Integer> findMetadataCheckLogPrepLevelIDs(int operDate, int operTime, int prepLevelID);
	
	/**
	 * 统计整个过程时间段内告警信息条数
	 * @param startOperDate
	 * @param startOperTime
	 * @param endOperDate
	 * @param endOperTime
	 * @param prepLevelID
	 * @return
	 */
	public int findMetadataCheckLogNum(int startOperDate, int startOperTime, 
			int endOperDate, int endOperTime, int prepLevelID);
}